#ifndef DELEGATETEMPLATE_H
#define DELEGATETEMPLATE_H

#include <QItemDelegate>

class QDomDocument;
class QStandardItemModel;

class delegateTemplate : public QItemDelegate
{
    Q_OBJECT
    QDomDocument *doc;
    QStandardItemModel *model;
    quint64 fileOffset;
    QDataStream::ByteOrder *byteOrder;
public:
    delegateTemplate(QDomDocument *doc, QStandardItemModel *model, quint64 fileOffset, QDataStream::ByteOrder *byteOrder, QObject *parent = 0);
    QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const;
    void setEditorData(QWidget *editor, const QModelIndex &index) const;
    void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const;
    void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const;
};

#endif // DELEGATE_TEMPLATE_H
